overview
next
Linux für Anwendungsentwicklung
previous
nextDozent
- Paul Hänsch
- Seit 2012 freiberuflicher Programmierer
- Arbeit an und mit Freier Software (Open Source)
- Kunden: Denkmalstiftung, Kinderzirkus, ...
- in der Vergangenheit: Free Software Foundation Europe, Jugendclub, Kulturserver
- Videopodcast: GNUfunzt! http://gnufunzt.de
- Kontakt: Paul.Haensch@damago.eu
previous
nextOrganisatorisches zum Kurs
19 Termine 18 Termine
- Feiertag am 3. Oktober / Frei am 4. Oktober
- 8:00 bis 15:15 Uhr
- Letzter Termin 11.10.
- Danach: eine Woche Prüfungsvorbereitung
- Pausenzeiten
- ca. 9:30 - 10:00 Uhr: Frühstückspause
- ca. 12:30 - 13:15 Uhr: Mittagspause
- Themenübersicht - Nach der Einführung
previous
nextVorstellungsrunde
- Wie seid ihr zu der Umschulung gekommen?
- Wie habt ihr bisher programmiert?
- Welches kleine Programm wolltet ihr immer schonmal schreiben?
previous
nextWas ist ein Betriebssystem?
previous
nextWas ist ein Betriebssystem?
previous
nextFunktionen eines Betriebssystems
previous
nextBegriffe
GNU Desktop Unix
Ubuntu Linux Distribution
Gnome Knoppix
previous
nextWas ist Unix?
- 1969 von an den Bell Labs für PDP-7 konzipiert
- Von "C"-Erfinder Dennis Ritchie und Ken Thompson
- Entworfen um "Space Travel"-Spiel als Anwendung
- Schafft grundlegenden Aufbau für Beriebssysteme
- Von Bell an kommerzielle Computerhersteller lizensiert
previous
nextprevious
nextWas ist GNU?
- 1983 am durch Richard M. Stallman am MIT begonnen
- Auslöser war u.A. Missmut über Kopierschutzpraktiken
- Grundlage der Free Software Bewegung
- Unix-Kompatibles Betriebssystem
- Umfasst Unix-Dienstprogramme
previous
nextprevious
nextWas ist Linux?
- 1991 durch Linus Torvalds an der Uni Helsinki begonnen
- Unix-Kompatibler Betriebssystem-Kernel
- Lauffähig mit GNU-Dienstprogrammen
GNU + Linux
previous
nextWas ist eine Distribution?
previous
nextBeispiele für Distributionen
- Ubuntu - Kommerzielle Distribution basierend auf Debian
- Debian - Frühe Distribution mit Online-Paketsystem
- Gentoo - Zusammenstellung von Quellcode zum selbst anpassen
- Arch - Verbreitete Distribution mit eigenem Paketsystem
- Knoppix - Debian basiertes Live-System
- Fedora, RedHat, Suse, Parabola, Puppy, Rebecca Black, ...
- Tausende weitere
previous
nextDesktopumgebungen
Grafische Bedienoberflächen können sehr unterschiedlich aussehen
- Gnome
- KDE
- LXDE
- Xfce
- Maté, i3, Awesome, WindowMaker, LXQT, Enlightenment, usw...
- Unterscheidung: Window Manager, Toolkit, Softwaresuite
previous
nextWeitere Begriffe
- Android: anderes Betriebssystem mit Linux-Kernel
- BSD: Berkeley Software Distribution, anderes Freies Unix
- Busybox: andere Suite von Unix-Dienstprogrammen
previous
nextThemenübersicht
previous
nextprevious
nextWeitere Themen
- Prozessmanagement
- Vertiefung Kommandozeile, Shellscripting
- Datenträger, Dateisysteme, Partitionen
- Systemstart
- Paketsysteme, Softwareinstallation, Systeminstallation
- Netzwerk, SSH
nach Wunsch Android, X11, Verschlüsselung, Internetdienste, Versionskontrolle, Gameserver, ..., Scripting, Programmierunmgebungen, Webentwicklung
Installparty?
- Lernziele LPI
previous
nextprevious
nextArbeit mit Dateien
~$ touch datei1
previous
nextprevious
nextArbeit mit Dateien
~$ ls -l datei1
-rw-r--r-- 1 live live 0 Apr 10 02:13 datei1
previous
nextArbeit mit Dateien
~$ echo "Hallo Welt!" > datei1
previous
nextArbeit mit Dateien
~$ ls -l datei1
-rw-r--r-- 1 live live 12 Apr 10 02:13 datei1
previous
nextArbeit mit Dateien
~$ cat datei1
previous
nextArbeit mit Dateien
~$ touch datei1
~$ ls
datei1
~$ ls -l datei1
-rw-r--r-- 1 live live 0 Apr 10 02:13 datei1
~$ echo "Hallo Welt!" > datei1
~$ ls -l datei1
-rw-r--r-- 1 live live 12 Apr 10 02:13 datei1
~$ cat datei1
Hallo Welt!
~$ _
previous
nextArbeit mit Dateien
~$ ls -l /bin/bash
-rwxr-xr-x 1 root root 1168776 Apr 18 06:12 /bin/bash
previous
nextArbeit mit Dateien
~$ ls -l -h /bin/bash
previous
nextArbeit mit Dateien
-rwxr-xr-x 1 root root 1.2M Apr 18 06:12 /bin/bash
previous
nextZusammenfassung
touch
legt eine Datei an
ls
zeigt Informationen über eine Datei
previous
nextZusammenfassung
- Kommandos lassen sich parametrisieren, z.B.
ls -l
und ls -h
previous
nextZusammenfassung
- mit
echo
können wir text in eine Datei schreiben
previous
nextZusammenfassung
cat
zeigt den Inhalt von Dateien an
previous
nextZusammenfassung
touch
ls
ls -l -h
echo
cat
previous
nextZugriffsrechte
previous
nextZugriffsrechte
~$ ls -l datei1
-rw-r--r-- 1 live live 12 Apr 10 02:13 datei1
Typ | Eigentümer | Gruppe | Andere |
- | rw- | r-- | r-- |
previous
nextZugriffsrechte
~$ ls -l /bin/cat
-rwxr-xr-x 1 root root 34676 Feb 22 2017 /bin/cat
Typ | Eigentümer (root) | Gruppe (root) | Andere |
- | rwx | r-x | r-x |
previous
nextZugriffsrechte
~$ chmod u-r datei1
~$ ls -l datei1
--w-r--r-- 1 live live 12 Apr 10 02:13 datei1
Typ | Eigentümer | Gruppe | Andere |
- | -w- | r-- | r-- |
previous
nextZugriffsrechte
~$ cat datei1
cat: datei1: Keine Berechtigung
previous
nextZugriffsrechte
~$ chmod u+r datei1
~$ cat datei1
Hallo Welt!
previous
nextZugriffsrechte - Gruppen
~$ groups
live sudo video input
previous
nextZugriffsrechte - Gruppen
~$ chgrp video datei1
~$ ls -l datei1
-rw-r--r-- 1 live video 12 Apr 10 02:13 datei1
previous
nextNavigation im Dateisystem
previous
nextNavigation im Dateisystem
~$ pwd
/home/live
previous
nextNavigation im Dateisystem
~$ cd .
~$ pwd
/home/live
previous
nextNavigation im Dateisystem
~$ cd ..
~$ pwd
/home
previous
nextNavigation im Dateisystem
~$ cd ..
~$ pwd
/
~$ ls
bin etc media proc sys var boot home mnt
root tmp dev lib opt sbin usr
previous
nextNavigation im Dateisystem
~$ ls bin
~$ ls etc
~$ ls dev
previous
nextNavigation im Dateisystem
previous
nextNavigation im Dateisystem
previous
nextSystemordner in Unix
- /bin enthält ausführbare Programme
- /boot enthält den Systemkernel und Dateien, die damit unmittelbar in Zusammenhang stehen
- /etc enthält systemweite Konfigurationsdateien
- /home enthält Heimverzeichnisse der Benutzer
- /lib enthält sogenannte Softwarebibliotheken
- /media wird benutzt um temporäre Medien wie CDs und USB-Sticks abzubilden
- /var enthält Dateien, die sich ohne Handlung des Benutzers im regulären Betrieb verändern (z.B. Logbücher)
- /usr enthält weitere /bin und /lib Verzeichnisse für weniger grundlegende Programme
previous
nextprevious
nextprevious55